//
//  StatusViewModel.swift
//  weibo10
//
//  Created by 晁岳山 on 15/10/19.
//  Copyright © 2015年 晁岳山. All rights reserved.
//

import UIKit
/// 处理单条微博的数据模型
class StatusViewModel {
    
    //每一个cell的高度
    lazy var cellHeight: CGFloat = {
        let cell = StatusCell(style: .Default, reuseIdentifier: reuseCellID)
        
        return cell.rowHeight(self)
    }()
    //微博模型
    var status: Status
    //头像的URL
    var userProfileURL: NSURL{
        return NSURL(string: status.user?.profile_image_url ?? "")!
    }
    //缩略图的URL  因为计算比较复杂  不适用计算性属性  在init中计算  这样值计算一次用的时候拿就行啦
    var thumbnailURLs: [NSURL]?
    
    //等级
    var userMenberImage: UIImage? {
        if status.user?.mbrank > 0 && status.user?.mbrank < 7 {
        
                return UIImage(named: "common_icon_membership_level\(status.user!.mbrank)")
        }
        return nil
    }
    /// 认证类型，-1：没有认证，0，认证用户，2,3,5: 企业认证，220: 达人
    var verified_type: Int = 0
    var userVerifiedTypeImage: UIImage? {
        switch(status.user?.verified_type ?? -1){
            case 0: return UIImage(named: "avatar_vip")
                    
            case 2,3,5: return UIImage(named: "avatar_enterprise_vip")
                    
            case 220: return UIImage(named: "avatar_grassroot")
            default: return nil

        }
    }
    //构造函数
    init(status: Status) {
        self.status = status
        //计算缩略图的URL
        if status.pic_urls?.count > 0 {
            thumbnailURLs = [NSURL]()
            for dict in status.pic_urls! {
                let url = NSURL(string: dict["thumbnail_pic"]!)
                thumbnailURLs?.append(url!)
            }
        }
    }
    
    //描述信息
    var description: String {
        return status.description + "\n配图数组 \((thumbnailURLs ?? []) as NSArray)"
    }
    
}




